//
//  ZqmTabBarViewController.swift
//  weibo
//
//  Created by 张清美 on 16/3/2.
//  Copyright © 2016年 张清美. All rights reserved.
//

import UIKit

class ZqmTabBarViewController: UITabBarController {

    override func viewDidLoad() {
        
        
        super.viewDidLoad()
        
        let tb = ZqmTabBar()
        
        //使当前控制器变成了一个可选类型,因为起指向对象销毁后,闭包里面的 self 置为 nil
        tb.ComposeButtonClickClosure = {[weak self] in
        
            print("弹出控制器\(self)")
        
            //形成循环引用 解决方式 不能用 unowned self
            
        
        
        
        
        
        }
        
        self.setValue(tb, forKeyPath: "tabBar")
        //间接赋值 因为是只读属性
        
        //统一设置字体颜色
        self.tabBar.tintColor = UIColor.orangeColor()
        
        //调用四次方法
        
        addChildViewController(HomeTableViewController(), imageNamed: "tabbar_home", title: "首页")
        
         addChildViewController(MessageTableViewController(), imageNamed: "tabbar_message_center", title: "消息")
        
        addChildViewController(DiscoveryTableViewController(), imageNamed: "tabbar_discover", title: "发现")
//
       
//
//        
        addChildViewController(ProfileTableViewController(), imageNamed: "tabbar_profile", title: "文件")
//
//        
//        
//        
        

    }
    
    //添加子控制器
    
    private func addChildViewController(childController: UIViewController,imageNamed:String,title:String) {
        
        //设置 tabbar 上面的按钮图片
        
        //设置标题
        childController.tabBarItem.title = title
        
        //设置导航条
        childController.navigationItem.title = title
        
        //设置图片
        //解决图片渲染问题
        childController.tabBarItem.image = UIImage(named: imageNamed)?.imageWithRenderingMode(.AlwaysOriginal)
        
        //设置选中图片
        childController.tabBarItem.selectedImage = UIImage(named: "\(imageNamed)_selected")?.imageWithRenderingMode(.AlwaysOriginal)
        
        //添加到 tabbarcontroller
        //添加导航控制器
        
        addChildViewController(ZqmNavigationController(rootViewController: childController))
        
        
        
        //添加加号按钮
        
        
        
        
        
        
        
        
        
        
    }

   
}
